<ui:composition xmlns="http://www.w3.org/1999/xhtml"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:p="http://primefaces.org/ui" template="/paginas/template.xhtml">

	<ui:define name="corpoForm">
		
		<f:event type="javax.faces.event.PreRenderComponentEvent"
			listener="#{manterMetaBean.preRenderEdit}" />
		<h:form id="formAlterarMeta" prependId="false">

			<p:panelGrid columns="3" styleClass="botoes" id="botoes">
				<p:commandButton value="#{rsc.label_alterarMeta}"
					styleClass="botao" action="#{manterMetaBean.alterar}"
					ajax="false"
					onclick="setTimeout('document.getElementById(\'' + this.id + '\').disabled=true;', 50);"
					rendered="#{p:ifGranted('ALTERAR_META')}"
					title="#{rsc.title_alterar}" />

				<p:commandButton value="#{rsc.label_cancelar}" styleClass="botao"
					update="growl" action="#{manterMetaBean.cancelar}" ajax="false"
					onclick="setTimeout('document.getElementById(\'' + this.id + '\').disabled=true;', 50);"
					title="#{rsc.title_cancelar}" immediate="true">
				</p:commandButton>

			</p:panelGrid>

			<p:panel id="pnlAlterarMeta"
				header="#{rsc.label_alterarMeta}" toggleable="true"
				toggleSpeed="500">

				<p:panelGrid columns="4">

					<p:outputLabel value="#{rsc.label_nomeRegra}" for="txtNomeRegra" />

					<p:outputLabel value="#{rsc.label_dataInicio}" for="cldDataInicio" />

					<p:outputLabel value="#{rsc.label_dataFim}" for="cldDataFim" />

					<p:outputLabel value="#{rsc.label_filial}" for="cmbFilial" />

					<p:inputText label="#{rsc.label_nomeRegra}" id="txtNomeRegra"
						maxlength="60" size="40" title="#{rsc.label_nomeRegra}"
						value="#{manterMetaBean.entidade.nome}" />

					<p:calendar pattern="dd/MM/yyyy" size="10" showOn="button"
						id="cldDataInicio"
						value="#{manterMetaBean.entidade.dataInicio}">
					</p:calendar>

					<p:calendar pattern="dd/MM/yyyy" size="10" showOn="button"
						id="cldDataFim" value="#{manterMetaBean.entidade.dataFim}">
					</p:calendar>

					<p:selectOneMenu style="width: 150px" label="#{rsc.label_filial}"
						styleClass="width: 120px"
						value="#{manterMetaBean.entidade.filial.id}" id="cmbFilial">
						<f:selectItems value="#{manterMetaBean.formulario.filiais}"
							var="c" itemLabel="#{c.nome}" itemValue="#{c.id}" />
					</p:selectOneMenu>

				</p:panelGrid>

				<p:panelGrid columns="6" id="panelRegras">
					<p:outputLabel value="#{rsc.label_classeRegra}" for="acClasseRegra" />

					<p:outputLabel value="#{rsc.label_tipoValor}" for="rdTipoValor" />

					<p:outputLabel value="#{rsc.label_valorPercentual}"
						rendered="#{manterMetaBean.formulario.tipo}" />

					<p:outputLabel value="#{rsc.label_valorBruto}"
						rendered="#{!manterMetaBean.formulario.tipo}" />

					<p:outputLabel value="#{rsc.label_eficienciaMeta}"
						for="txtValorInicialEficiencia" />

					<p:spacer />

					<p:spacer />

					<p:autoComplete id="acClasseRegra" minQueryLength="3" size="20"
						value="#{manterMetaBean.formulario.filtroClasse}"
						effect="fade" maxResults="7" forceSelection="true"
						completeMethod="#{manterMetaBean.listarClasses}">
						<p:ajax event="change"
							listener="#{manterMetaBean.adicionarClasseRegra}" />
					</p:autoComplete>

					<p:selectOneRadio id="rdTipoValor"
						style="padding: 0px; margin: 0px; line-height: 2px; !important;"
						value="#{manterMetaBean.formulario.tipo}">
						<p:ajax oncomplete="recarregarJS();" event="change"
							process="@this" update="panelRegras" />
						<f:selectItem itemLabel="#{rsc.label_percentual}" itemValue="true" />
						<f:selectItem itemLabel="#{rsc.label_valor}" itemValue="false" />
					</p:selectOneRadio>

					<p:inputText label="#{rsc.label_valor}" id="txtValorPercentual"
						maxlength="60" size="8" title="#{rsc.label_valor}"
						styleClass="percentual" converter="bigDecimalConverter"
						rendered="#{manterMetaBean.formulario.tipo}"
						value="#{manterMetaBean.formulario.regra.valor}" />

					<p:inputText label="#{rsc.label_valor}" id="txtValorMoeda"
						maxlength="60" size="8" title="#{rsc.label_valor}"
						styleClass="moeda" converter="bigDecimalConverter"
						rendered="#{!manterMetaBean.formulario.tipo}"
						value="#{manterMetaBean.formulario.regra.valor}" />

					<p:column>
						<p:inputText label="#{rsc.label_valorInicialEficiencia}"
							id="txtValorInicialEficiencia" maxlength="60" size="5"
							title="#{rsc.label_valorInicialEficiencia}"
							styleClass="percentual" converter="bigDecimalConverter"
							value="#{manterMetaBean.formulario.regra.valorInicialEficiencia}" />
						<h:outputText value="-" />
						<p:inputText label="#{rsc.label_valorFinalEficiencia}"
							id="txtValorFinalEficiencia" maxlength="60" size="5"
							title="#{rsc.label_valorFinalEficiencia}" styleClass="percentual"
							converter="bigDecimalConverter"
							value="#{manterMetaBean.formulario.regra.valorFinalEficiencia}" />
					</p:column>

					<p:commandButton value="#{rsc.label_adicionarRegra}"
						styleClass="botao" update="listaRegras, pnlAlterarMeta"
						actionListener="#{manterMetaBean.adicionarRegra}"
						oncomplete="recarregarJS();" title="#{rsc.title_adicionarRegra}" />

				</p:panelGrid>


			</p:panel>


			<p:panel id="pnlListaRegras" header="#{rsc.label_regrasAdicionadas}"
				toggleable="true" toggleSpeed="500">

				<p:panelGrid columns="1" styleClass="full-width"
					columnClasses="full-width">
					<p:dataTable emptyMessage="#{msg.nenhumRegistroEncontrado}"
						var="regra" id="listaRegras" sortMode="multiple"
						widgetVar="listaRegrasWid"
						value="#{manterMetaBean.entidade.regras}" paginator="true"
						rows="10" paginatorPosition="#{rsc.label_paginationPosition}"
						paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
						rowsPerPageTemplate="10,50,150,200">

						<p:column headerText="#{rsc.label_classeRegra}">
							<p:outputLabel value="#{rsc.label_vendedor}"
								rendered="#{regra.vendedor != null}" />
							<p:outputLabel value="#{rsc.label_marca}"
								rendered="#{regra.marca != null}" />
							<p:outputLabel value="#{rsc.label_perfil}"
								rendered="#{regra.perfil != null}" />
							<p:outputLabel value="#{rsc.label_produto}"
								rendered="#{regra.produto != null}" />
							<p:outputLabel value="#{rsc.label_categoria}"
								rendered="#{regra.categoria != null}" />
						</p:column>

						<p:column headerText="#{rsc.label_objetoRegra}">
							<p:outputLabel value="#{regra.vendedor.nome}"
								rendered="#{regra.vendedor != null}" />
							<p:outputLabel value="#{regra.marca.nome}"
								rendered="#{regra.marca != null}" />
							<p:outputLabel value="#{regra.perfil.nome}"
								rendered="#{regra.perfil != null}" />
							<p:outputLabel value="#{regra.produto.nome}"
								rendered="#{regra.produto != null}" />
							<p:outputLabel value="#{regra.categoria.nome}"
								rendered="#{regra.categoria != null}" />
						</p:column>

						<p:column headerText="#{rsc.label_viEficiencia}"
							sortBy="#{regra.valorInicialEficiencia}">
							<h:outputText value="#{regra.valorInicialEficiencia}"
								converter="bigDecimalConverter" />
							<h:outputText value="%" />
						</p:column>

						<p:column headerText="#{rsc.label_vfEficiencia}"
							sortBy="#{regra.valorFinalEficiencia}">
							<h:outputText value="#{regra.valorFinalEficiencia}"
								converter="bigDecimalConverter" />
							<h:outputText value="%" />
						</p:column>

						<p:column headerText="#{rsc.label_valor}" sortBy="#{regra.valor}">
							<p:outputLabel value="#{regra.tipoValor.sigla}"
								rendered="#{regra.tipoValor.label == 'Valor'}" />
							<p:outputLabel value="#{regra.valor}" />
							<p:outputLabel value="#{regra.tipoValor.sigla}"
								rendered="#{regra.tipoValor.label == 'Percentual'}" />
						</p:column>

						<p:column headerText="#{rsc.label_acoes}"
							styleClass="coluna-acoes">
							<p:commandButton oncomplete="confirmacao.show();" process="@this"
								icon="ui-icon ui-icon-trash" title="#{rsc.label_remover}">
								<f:setPropertyActionListener value="#{regra}"
									target="#{manterMetaBean.formulario.regraRemover}" />
							</p:commandButton>
						</p:column>


					</p:dataTable>
				</p:panelGrid>
			</p:panel>
		</h:form>


		<p:confirmDialog message="#{msg.questionConfirmaRemover}"
			appendTo="@(body)" width="250" id="dlgRemoveRegra"
			header="#{rsc.label_confirmar}" severity="alert"
			widgetVar="confirmacao">
			<h:form id="confirmarForm">
				<p:commandButton value="#{rsc.label_sim}" process="@this"
					styleClass="botao"
					actionListener="#{manterMetaBean.removerRegraMeta}"
					update=":formAlterarMeta:listaRegras"
					oncomplete="confirmacao.hide();" />
				<p:commandButton value="#{rsc.label_nao}" styleClass="botao"
					onclick="confirmacao.hide()" type="button" />
			</h:form>
		</p:confirmDialog>
	</ui:define>
</ui:composition>

